home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 010 / stripper.arc / DRAW.BAS (.txt) < prev    next >
Encoding:
GW-BASIC  |  1979-12-31  |  1.5 KB  |  56 lines

  1. 10  KEY OFF
  2. 20  CLS
  3. 30  DEFINT F,T
  4. 40  DIM FX(1000):DIM FY(1000):DIM TX(1000):DIM TY(1000)
  5. 50  SCREEN 1
  6. 60  COLOR 0,1
  7. 70  STARTCTR=1000
  8. 80  DELMODE=1:OLDCTR=STARTCTR
  9. 90  OPEN "data" FOR INPUT AS #1
  10. 100  IF EOF (1) THEN CLOSE#1:GOTO 200
  11. 110  CTR=CTR+1
  12. 120  INPUT#1,FX(CTR),FY(CTR),TX(CTR),TY(CTR)
  13. 130  GOTO 100
  14. 140  X=0:Y=0
  15. 150  PSET (X,Y)
  16. 160  PX=X:PY=Y
  17. 170  K$=INKEY$
  18. 180  IF K$="" GOTO 170
  19. 190  IF K$="s" OR K$="S" THEN DELMODE=1:OLDCTR=CTR:STARTCTR=CTR:CLOSE#1:ELSE GOTO 340
  20. 200  C=3:Z=1:CLS:OPEN "data" FOR OUTPUT AS #1
  21. 210  IF Z>CTR THEN 1000
  22. 220  IF Z>STARTCTR THEN C=2
  23. 230  IF DELMODE=0 AND C=3 THEN 290
  24. 240  LINE (FX(Z),FY(Z)) -(TX(Z),TY(Z)),1
  25. 250  K$=INKEY$: IF K$="" THEN 250
  26. 260  IF K$="D" OR K$="d" THEN DELCTR=DELCTR-1:GOTO 320
  27. 270  IF K$=" " THEN 290
  28. 280  IF K$="G" OR K$="g" THEN DELMODE=0 :GOTO 290:ELSE GOTO 230
  29. 290  LINE (FX(Z),FY(Z)) -(TX(Z),TY(Z)),C
  30. 300  IF C=3 THEN PRINT#1,FX(Z),FY(Z),TX(Z),TY(Z)
  31. 310  IF Z=>OLDCTR THEN LPRINT Z"- COMMAND = line ("FX(Z)","FY(Z)") -("TX(Z)","TY(Z)"),3"
  32. 320  Z=Z+1
  33. 330  GOTO 210
  34. 340  IF K$="E" OR K$="e" THEN CLOSE#1:SYSTEM
  35. 350  IF LEN(K$)>1 THEN K=ASC(MID$(K$,2)) ELSE K=ASC(K$)
  36. 360  IF K=56 OR K=52 OR K=50 OR K=54 THEN V=10: GOTO 390
  37. 370  IF K=72 OR K=75 OR K=77 OR K=80 OR K=82 OR K=83 THEN V=1: GOTO 390
  38. 380  GOTO 170
  39. 390  PRESET (X,Y)
  40. 400  IF K=77 OR K=54 THEN IF X<320-V THEN X=X+V
  41. 410  IF K=75 OR K=52 THEN IF X>-1+V THEN X=X-V
  42. 420  IF K=72 OR K=56 THEN IF Y>-1+V THEN Y=Y-V
  43. 430  IF K=80 OR K=50 THEN IF Y<200-V THEN Y=Y+V
  44. 440  PSET (PX,PY),1:PSET (X,Y),1
  45. 450  IF K=82 GOTO 480
  46. 460  IF K=83 THEN GOTO 160
  47. 470  GOTO 170
  48. 480  LINE (PX,PY) -(X,Y),1
  49. 490  CTR=CTR+1
  50. 500  FX(CTR)=PX:FY(CTR)=PY:TX(CTR)=X:TY(CTR)=Y
  51. 510  GOTO 160
  52. 1000  IF STARTCTR>CTR THEN STARTCTR=CTR
  53. 1010  CTR = STARTCTR
  54. 1020  IF DELCTR<0 THEN CLOSE#1:SCREEN 0:WIDTH 80:CLS:RUN"DRAW"
  55. 1030  GOTO 170
  56.